home *** CD-ROM | disk | FTP | other *** search
/ Cre@te Online 2000 December / Cre@teOnline CD05.iso / MacSoft / XML Authority.sea / XML Authority / Required / ccs_util.jar / test / ui / Logo.class (.txt) < prev    next >
Encoding:
Java Class File  |  1999-12-09  |  2.2 KB  |  59 lines

  1. package test.ui;
  2.  
  3. import java.awt.Canvas;
  4. import java.awt.Component;
  5. import java.awt.Graphics;
  6. import java.awt.Image;
  7. import java.awt.MediaTracker;
  8. import java.awt.SystemColor;
  9. import java.awt.Toolkit;
  10. import java.awt.image.ImageProducer;
  11. import java.net.URL;
  12.  
  13. class Logo extends Canvas {
  14.    private Image fImage = this.loadImage("logo.gif");
  15.    private int fWidth = 20;
  16.    private int fHeight = 20;
  17.  
  18.    public Logo() {
  19.       MediaTracker tracker = new MediaTracker(this);
  20.       tracker.addImage(this.fImage, 0);
  21.  
  22.       try {
  23.          tracker.waitForAll();
  24.       } catch (Exception var2) {
  25.       }
  26.  
  27.       if (this.fImage != null) {
  28.          this.fWidth = this.fImage.getWidth(this);
  29.          this.fHeight = this.fImage.getHeight(this);
  30.       }
  31.  
  32.       ((Component)this).setSize(this.fWidth, this.fHeight);
  33.    }
  34.  
  35.    public Image loadImage(String name) {
  36.       Toolkit toolkit = Toolkit.getDefaultToolkit();
  37.  
  38.       try {
  39.          URL url = this.getClass().getResource(name);
  40.          return toolkit.createImage((ImageProducer)url.getContent());
  41.       } catch (Exception var4) {
  42.          return null;
  43.       }
  44.    }
  45.  
  46.    public void paint(Graphics g) {
  47.       this.paintBackground(g);
  48.       if (this.fImage != null) {
  49.          g.drawImage(this.fImage, 0, 0, this.fWidth, this.fHeight, this);
  50.       }
  51.  
  52.    }
  53.  
  54.    public void paintBackground(Graphics g) {
  55.       g.setColor(SystemColor.control);
  56.       g.fillRect(0, 0, ((Component)this).getBounds().width, ((Component)this).getBounds().height);
  57.    }
  58. }
  59.